// 工具类
import util from './util.js';

/**
 * 倒计时类
 */
module.exports = {

      onSetTimeList(page, dataIndex) {
            let _this = this;
            // 获取当前时间，同时得到活动结束时间数组
            let newTime = new Date().getTime(),
                  newData = [];
            // 对结束时间进行处理渲染到页面
            page.data[dataIndex].forEach(item => {
                  let endTime = new Date(util.format_date(item.date)).getTime();
                  let dynamic = {
                        hou: '00',
                        min: '00',
                        sec: '00'
                  };
                  // 如果活动未结束，对时间进行处理
                  if (endTime - newTime > 0) {
                        let diffTime = (endTime - newTime) / 1000;

                        // 获取时、分、秒
                        let   hou = parseInt(diffTime / 3600),
                              min = parseInt(diffTime % 3600 / 60),
                              sec = parseInt(diffTime % 3600 % 60);
                        dynamic = {
                              hou: _this.timeFormat(hou),
                              min: _this.timeFormat(min),
                              sec: _this.timeFormat(sec)
                        }
                  }
                  newData.push({
                        date: item.date,
                        dynamic
                  });
            })
            //console.log(newData);
            // 渲染，然后每隔一秒执行一次倒计时函数
            page.setData({
                  [`${dataIndex}`]: newData
            });

            // 重复执行
            setTimeout(() => {
                  this.onSetTimeList(page, dataIndex)
            }, 1000);

      },

      /**
       * 小于10的格式化函数
       */
      timeFormat(param) {
            return param < 10 ? '0' + param : param;
      },


};